长跑需有长跑道,无问芯穹基于 OpenCompass 推出 LV-Eval :平均长度最长的评测基准
本文转发自OpenCompass公众号 “司南评测体系”
2月16日凌晨,美国 OpenAI 公司发布全新的 Sora 文生视频模型,在世界范围内引起又一次轰动。Sora 可以根据用户输入的文本指令,一次性生成60秒的长视频,且视频的画面精细度、流畅度令人惊叹。据学术社区讨论,Sora 生成一个高精度60秒视频,可能至少需要约 921K tokens 的上下文长度。
Sora 发布同日,谷歌发布了新一代多模态大模型 Gemini 1.5 Pro,最高可支持 10,000K tokens 的上下文长度。
注:GPT 第一次发布时,GPT-1 (2018) 的上下文长度仅为 512 个tokens,ChatGPT-3.5 (2022) 达到了4096 个 tokens,ChatGPT-4 Turbo (2023) 达到 128K。截止目前,大模型上下文文本长度最长已经能够达到百万级,实验环境甚至能达到千万级别。
由此可见,越来越多的大模型正在实现一次性处理超长文本的能力(无问芯穹的 无穹天权大模型「Infini-Megrez」曾破纪录地达到了 256K 的上下文长度),并且可以预见这一长度还将不断增长。
在百万级 token 上下文的支持下,我们可以实现更多人工智能的设想:比如让大模型离个性化、持续陪伴的AI助手更进一步;或者分秒间测试上百上千代码库,高效辅助代码生成与逻辑跑通。
在这一愿景的指引下,上海人工智能实验室OpenCompass开源评测体系
(https://github.com/open-compass) 携手无问芯穹共同推出 LV-Eval 长文本测试基准,旨在为未来长文本大语言模型的研究发展提供有价值的性能参考。
● LV-Eval 是一个具备 5 个长度等级(16k、32k、64k、128k 和 256k)、最大文本测试长度达到 256k 的长文本评测基准。LV-Eval 的平均文本长度达到 102,380 字,最小/最大文本长度为 11,896/387,406 字。
● LV-Eval 主要有 2 类评测任务——单跳QA和多跳QA,共包含 11 个涵盖中英文的评测数据子集。单跳QA考察大模型基本的检索单一信息的能力,多跳QA则更能够考察其拆解文本,组合不同位置信息的能力。
● LV-Eval 在设计时引入 3 项关键技术:干扰事实插入(Confusiong Facts Insertion,CFI)提高挑战性,关键词和短语替换(Keyword and Phrase Replacement,KPR)减少信息泄漏,以及基于关键词召回的评测指标(Answer Keywords,AK,指代结合答案关键词和字词黑名单的评价指标)提高评测数值客观性。
短跑道,难测长跑者
随着文本长度发展,评测基准也需要适应整体模型长度变化。当前常被用于长文本评测的基准平均长度在5k~21k 之间,难以覆盖越来越长的长文本模型上下文窗口长度范围(16k~256k+)。
#LV-Eval 支持更长文本:LV-Eval 的平均文本长度达到 102,380 字,最小/最大文本长度为 11,896/387,406 字,最长支持 256k 的长文本。
此外,当前常被用于长文本评测的基准在各长度等级下的数据样本数量不均衡(题目数量不一致),或者各长度等级下的问答对不相同(题目难度不一致),难以对同一模型在不同长2度等级下的能力进行公平、可比的评测。
#LV-Eval 为不同长度等级“统一命题”:同一数据集在不同长度等级下具有相同的问答对集合,只是构成各长度等级的上下文长度不同。我们的目的是保持问答对一致的情况下,充分测试模型在不同长度等级上下文中的性能表现,更可控地评估模型的长文本能力。
LV-Eval,不只是“更长的跑道”
旧的基准还有还有其他问题,如数据集泄露风险。旧长文本 bmk 直接采用公开数据源的文本和问答对,并未对其中关键信息进行修改,这些数据源可能已经包含在模型的训练语料中,使得模型可以通过“背题”或常识记忆的捷径来获得虚高的分数;
#LV-Eval 预防大模型“背题”:通过“关键词和短语替换”技术,对部分数据进行人工标注,解决长文本能力评测中由于数据集泄漏而引起的指标虚高问题。由此,LV-Eval 能够严格要求被测模型根据数据中实际提供的上下文信息来回答问题,而非通过“背题”或者预训练阶段的常识记忆的方式来回答问题。
此外,评测指标较单一,存在“水分”空间。常用的 F1、ROUGH 等指标通过模型回答与答案之间的公共词的匹配度来衡量回答准确度,忽略了不同词的重要性不同这一特性,并且存在大量与答案关键信息无关的词汇匹配,影响模型得分。
* 比如 “注意力是你的全部所需” 这样一个答案,如果模型回答 “卷积是你的全部所需” ,在之前的评测指标下,尽管 “注意力” 这个关键信息未答对,但由于后面的所有字词都匹配上了,模型仍然能得到较高的分数,这样的分数虚高导致评测结果不能准确反映模型实际能力。
注:评测指标的计算被设计为两阶段过程,以F1分数为例:第一阶段先计算模型回答对答案关键词的召回分数,如果分数低于预设阈值,则直接计0分;如果召回分数高于阈值,则进一步计算模型回答与完整答案的F1分数——首先将字词黑名单中的词从回答和答案中过滤掉,再正常进行F1分数计算。这样一来,评测指标可使得模型得分更加客观公正。
#LV-Eval 挤压测评“水分”:基于关键词召回的评测指标,人工标注答案的关键信息和词汇黑名单,在指标计算的时候更关注关键信息,避免分数虚高,可更客观公正地评测模型性能。答案关键词是从原始答案中提取的最具回答信息量的词汇或短语,而字词黑名单主要包含一些无信息量的代词、助词,比如“的”、“和”、“了”等。
“大海捞针”,“插针”有方
LV-Eval 专注于 QA 任务,“大海捞针”可算作是 QA 任务的一个子集,其重点是测试模型对放置于不同上下文位置的关键信息(针)的检索能力,从而反映模型在其整个上下文窗口上的能力是否均衡,而其“针”的设置往往都比较简单,因此不足以充分测试模型更进一步的能力,比如信息汇总、理解、推理能力等。
#LV-Eval 同时考察“抗干扰”能力:通过“干扰事实插入”技术,在大部分数据集中加入了干扰信息,提升难度。在构建测试数据的过程中,将问答相关文档和无关文档混合拼接起来构成测试文档。该构建方式在扩展文本长度的同时,可有效评测模型从冗长混淆文本中提取关键信息的能力。此外,我们还使用 GPT-4 生成多个干扰信息,并在人工检查后随机插入到测试文档中,以评测模型在有相似事实描述的干扰下保持准确推理的能力。
数据集说明
LV-Eval 中包含 11 个数据集,其中 2 个是自建,9 个是源自公开数据集。公开数据集的选择基于:
a. 原本数据的文本长度较长,这样尽量让我们混合拼接出的文本不至于太零碎,比如我们不少数据来源于长文本 Benchmark LongBench、loogle 等;
b. 原本数据集的样本库较大,这样我们混合拼接出的文本之间差异性可以保证;
c. 问答类型,由于 LV-Eval 专注于QA任务,并包含多跳、单跳QA,因此所选数据集需要包含相应的问答类型,特别是长程依赖的多跳QA,是比较稀缺的类型;
d. 双语要求,我们希望在各个细分QA任务中,都保证既有英文测试集和中文测试集,因此所选数据集还应满足语言要求。
单跳QA
单跳QA任务中,支持回答问题的证据或事实仅出现在输入文本中的某一个位置。为测试单跳QA的能力,我们准备了统一参数的数据集,详情如下。
多跳QA
多跳QA任务中,支持回答问题的证据或事实会出现在上下文中多个不同的位置,需要汇总多处关键信息才能得到正确答案。
注:CFI 是 Confusiong Facts Insertion 的缩写,表示该数据集插入了干扰事实,KPR 是 Keyword and Phrase Replacement 的缩写,表示该数据集进行了关键词和短语替换,AK 是 Answer Keywords 的缩写,表示该数据集标注了答案中的关键词,用于基于关键词召回的指标计算。
诚邀测评
目前,OpenCompass 数据集社区已上线 LV-Eval 长文本评测基准,后续将在平台上陆续开展国内外代表性大模型的超长文本能力测评,诚邀大家一同参与进来,为大模型评测的发展贡献力量!
测评项目地址如下(点击“阅读原文”可直达):
https://github.com/infinigence/LVEval/tree/main
大模型开源开放评测体系司南(OpenCompass)是由上海人工智能实验室研发,面向大语言模型、多模态模型等各类模型的一站式评测平台。
OpenCompass 的主要特点包括开源可复现、全面的能力维度、丰富的模型支持、分布式高效评测、多样化评测范式以及灵活化拓展。
基于高质量、多层次的能力体系和工具链,OpenCompass 创新了多项能力评测方法,并构建了一套高质量的中英文双语评测基准,涵盖语言与理解、常识与逻辑推理、数学计算与应用、多编程语言代码能力、智能体、创作与对话等多个方面,能够实现对大模型真实能力的全面诊断。
官网地址:https://opencompass.org.cn
开源链接:https://github.com/open-compass
2024-03-07
2024-03-05